草庐IT

JavaScript 正则表达式 : test and exec

全部标签

ruby-on-rails - 转义正则表达式中的特殊字符?

我有一个表单,它将文本字段的内容发送到我的Rails应用程序,并且我必须生成这个字符串的正则表达式。我试过这样的:regex=/#{params[:text]}/一般情况下可以,但如果字符串中包含括号或特殊字符,则此方法无效。我不希望Rails处理字符。它们应该自动转义。我试过这样的:/\Q#{params[:text]}\E/但这也不起作用。 最佳答案 你应该使用Regexp.escaperegex=/#{Regexp.escape(params[:text])}/#inrailsmodels/controllerswithmon

Ruby/Sinatra - 提供 css、javascript 或图像文件

通过Sinatra路由您的请求的正确方法是什么,以便它在不进行任何处理的情况下提供文件?我正在寻找人们在Sinatra框架中执行此操作的最常见方式?我通常将所有静态内容放在“内容”路径中。例子:/内容/CSS/内容/图片/内容/js如何使用通配符提供内容下的所有内容?我很惊讶这里没有这样的真实例子:http://sinatra-book.gittr.com/ 最佳答案 Sinatra和Rails对静态内容使用路径public-例如,./public/javascripts/。这些路径中的所有文件随后将由Web服务器(例如Thin、P

ruby-on-rails - 如何将动态 Ruby 代码嵌入到 Slim 模板中的 "javascript"部分?

一种方式:javascript_tagdo=="varall_product_ids=#{existing_ids.to_json};"=="varproducts_json=#{@filter.data.to_json};"或:=%Q{varall_product_ids=#{existing_ids.to_json};varproducts_json=#{@filter.data.to_json};}有没有更好的解决方案? 最佳答案 slimjavascript:varall_product_ids="#{existing_id

ruby-on-rails - 如何将重音字符与正则表达式匹配?

我正在运行RubyonRails3.0.10和Ruby1.9.2。我正在使用以下正则表达式来匹配名称:NAME_REGEX=/^[\w\s'"\-_&@!?()\[\]-]*$/uvalidates:name,:presence=>true,:format=>{:with=>NAME_REGEX,:message=>"formatisinvalid"}但是,如果我尝试保存如下的一些单词:OilalàPìRùby...#Infewwords,thosewithaccentedcharacters我有一个验证错误“名称格式无效。。我如何更改上面的正则表达式以便匹配重音字符,如à、è、é、ì

javascript block 中的 ruby​​ [slim 模板]

有一种方法可以将ruby​​条件放入javascriptblock中吗?即javascript:varconfig={common_value_1:1,common_value_2:2};-ifmy_value===true#thismustbearubyconditionconfig.custom_true_value_1="1";config.custom_true_value_2="#{my_value}";-elseconfig.custom_false_value_1="1";config.custom_false_value_2="#{my_value}";或者是否有其他解

ruby - 如何关闭 Rails 3.1 上的自动样式表/javascript 生成?

我有一个正在处理的Rails3.1项目,但我不希望controller_name.css.sass和controller_name.js.coffee每次运行railsgeneratecontrollercontroller_name时都会生成。我可以发誓我已经在互联网上的某个地方看到了设置,但我现在找不到它了。这是什么?请记住,我仍然想使用AssetPipeline和CoffeeScript/Sass集成,但我正在以我自己的方式组织这些文件。我很确定答案是命令行参数,但是使用生成器设置或隐藏文件或其他东西关闭它的奖励积分。编辑:我找到了它的命令行标志。railsgeneratecon

Ruby:通过正则表达式过滤数组?

这对我来说是一个常见的、重复的习惯用法:使用正则表达式过滤一个数组,并返回一个子数组。我的方法看起来不太像Ruby(我来自Java)。我最终得到了很多看起来很像这样的方法。改进此代码的惯用Ruby方法是什么?defget_all_gifs(items_)output=Array.newfilter=/\.jpg$/items_.eachdo|item|nextifitem=~filteroutput 最佳答案 如果你想找到所有的动图:defget_all_gifs(files)files.select{|i|i[/\.gif$/]}

ruby - 什么是匹配不在行尾的字符串的正则表达式?

正则表达式/abc$/将匹配出现在行尾的abc。我该怎么做?我想匹配不在行尾的abc。此外,我将使用正则表达式来替换字符串,所以我只想捕获abc,而不是字符串后面的任何内容,所以/abc.+$/不起作用,因为它不仅会替换abc,还会替换abc之后的所有内容。正确的正则表达式是什么? 最佳答案 /abc(?!$)/(?!$)是一个negativelookahead.它将查找abc的任何匹配项,但后面没有直接跟$(行尾)测试abcddee(匹配)dddeeeabc(不匹配)adfassdfabcs(匹配)fabcddee(匹配)将它应用

ruby - 如何获取字符串中所有出现的 Ruby 正则表达式的匹配数据?

对于字符串中正则表达式的每次出现,我都需要MatchData。这与MatchAllOccurrencesofaRegex中建议的扫描方法不同,因为这只会给我一个字符串数组(我需要完整的MatchData,以获取开始和结束信息等)。input="abc12def34ghijklmno567pqrs"numbers=/\d+/numbers.matchinput##(onlythefirstmatch)input.scannumbers#["12","34","567"](allmatches,butonlythestrings)我怀疑我忽略了某些方法。有什么建议吗?

ruby-on-rails - PG::错误:SELECT DISTINCT,ORDER BY 表达式必须出现在选择列表中

ActionView::Template::Error(PG::Error:ERROR:forSELECTDISTINCT,ORDERBYexpressionsmustappearinselectlist我正在创建一个事件网站,我正在尝试按事件的开始时间对呈现的rsvps进行排序。有很多RSVPS,所以我将它们分组为不同的,但在过去的几天里,我在排序结果时遇到了很多困难,而没有在PG上弹出这个错误。我已经查看了之前关于该主题的一些问题,但仍然很迷茫。我怎样才能让它工作?非常感谢!@rsvps=Rsvp.where(:voter_id=>current_user.following.co